package com.system.demo.service;

import com.system.demo.entity.DTO.LeaveIdDTO;
import com.system.demo.entity.DTO.LeaveRequestDTO;
import com.system.demo.entity.DTO.LeaveSearchDTO;
import com.system.demo.tool.ResponseResult;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public interface LeaveService {

    ResponseResult<?> requestLeave(LeaveSearchDTO leaveSearchDTO, int current, int size);

    ResponseResult<?> changeLeave(LeaveIdDTO applicationId, String isApproved);

    ResponseResult<?> leavingSubmitApplication(LeaveRequestDTO leaveRequestDTO);

    ResponseResult<?> leavingView(int current, int size);

    ResponseResult<?> leaveDelete(Integer applicationId);

    ResponseResult<?> leaveApplicationBack(Integer applicationId);

    ResponseResult<?> approvalBack(LeaveIdDTO applicationId, String isApproved);

    ResponseResult<?> leaveApplicationUpdate(Integer applicationId,LeaveRequestDTO leaveRequestDTO);
}
